From 980d6c292567cf6e0e88d852a5d1f3defd05c0a9 Mon Sep 17 00:00:00 2001 From: Keir Fraser Date: Wed, 8 Oct 2008 11:59:01 +0100 Subject: [PATCH] x86: Continue to allocate vectors across LAPIC priority levels, since it's easy to do. It's not really necessary for modern non-buggy APICs though. Signed-off-by: Keir Fraser --- xen/arch/x86/io_apic.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/xen/arch/x86/io_apic.c b/xen/arch/x86/io_apic.c index 979addedb5..aa21f18104 100644 --- a/xen/arch/x86/io_apic.c +++ b/xen/arch/x86/io_apic.c @@ -697,8 +697,9 @@ int assign_irq_vector(int irq) vector = current_vector; while (vector_irq[vector] != FREE_TO_ASSIGN) { - if (++vector > LAST_DYNAMIC_VECTOR) - vector = FIRST_DYNAMIC_VECTOR; + vector += 8; + if (vector > LAST_DYNAMIC_VECTOR) + vector = FIRST_DYNAMIC_VECTOR + ((vector + 1) & 7); if (vector == current_vector) { spin_unlock(&vector_lock); -- 2.30.2